import { axios } from '@/utils/request'
let uri = process.env.NODE_ENV === 'production' ? '' : '/yb'

const api = {
  getPermissionTree: uri + '/permission/getPermissionTree',
  getRoleList: uri + '/role/queryRoleInfo',
  getMenuTree: uri + '/role/queryAllMenu',
  saveRoleInfo: uri + '/role/saveRoleInfo',
  queryInfoById: uri + '/role/queryAllInfoByRoleId',
  qeuryPermission: uri + '/permission/all',
  queryPermissionById: uri + '/permission/queryPermissionById',
  queryOnlyPermissionName: uri + '/permission/queryOnlyPermissionName',
  updatePermissionInfo: uri + '/permission/updatePermissionInfo',
  createPermissionInfo: uri + '/permission/createPermissionInfo',
  changeState: uri + '/permission/changeState',
  updateOrder: uri + '/permission/updateOrder',
  queryTopPermissionList: uri + '/permission/queryTopPermissionList',
  roleDelete: uri + '/role/delete', // 删除角色
  avoidCloseLogin: uri + '/login/avoidCloseLogin',
  // 分管领导
  chargeList: uri + '/system/dept/lead/query',
  chargeInsert: uri + '/system/dept/lead/create',
  chargeUpdate: uri + '/system/dept/lead/update',
  chargeDelete: uri + '/system/dept/lead/delete/'
}

//avoidCloseLogin
export function avoidCloseLogin(data) {
  return axios({
    url: api.avoidCloseLogin,
    method: 'post',
    data
  })
}

export function roleDelete(id, params) {
  return axios({
    url: `${api.roleDelete}/${id}`,
    method: 'delete',
    params
  })
}

// getPermissionTree
export function getPermissionTree(params) {
  return axios({
    url: api.getPermissionTree,
    method: 'get',
    params
  })
}

// 角色管理-获取角色列表
export function getRoleList(parameter) {
  return axios({
    url: api.getRoleList,
    method: 'get',
    params: parameter
  })
}

// 角色管理-获取菜单树
export function getMenuTree(parameter) {
  return axios({
    url: api.getMenuTree,
    method: 'get',
    params: parameter
  })
}

// 角色管理-新增修改角色信息
export function saveRoleInfo(parameter) {
  return axios({
    url: api.saveRoleInfo,
    method: 'post',
    data: parameter
  })
}

// 角色管理-新增修改角色信息
export function queryInfoById(parameter) {
  return axios({
    url: api.queryInfoById,
    method: 'get',
    params: parameter
  })
}

// 角色管理-查询所有权限
export function qeuryPermission(parameter) {
  return axios({
    url: api.qeuryPermission,
    method: 'get',
    params: parameter
  })
}

// 权限管理-根据父ID查询权限信息
export function queryPermissionById(parameter) {
  return axios({
    url: api.queryPermissionById,
    method: 'get',
    params: parameter
  })
}

// 权限管理-权限名称唯一性校验
export function queryOnlyPermissionName(parameter) {
  return axios({
    url: api.queryOnlyPermissionName,
    method: 'get',
    params: parameter
  })
}

// 权限管理-更新权限信息
export function updatePermissionInfo(parameter) {
  return axios({
    url: api.updatePermissionInfo,
    method: 'put',
    data: parameter
  })
}

// 权限管理-修改排序
export function updateOrder(parameter) {
  return axios({
    url: api.updateOrder,
    method: 'put',
    data: parameter
  })
}

// 权限管理-新增权限信息
export function createPermissionInfo(parameter) {
  return axios({
    url: api.createPermissionInfo,
    method: 'post',
    data: parameter
  })
}

// 权限管理-启用/禁用改变状态
export function changeState(parameter) {
  return axios({
    url: api.changeState,
    method: 'put',
    params: parameter
  })
}

queryTopPermissionList
// 权限管理-左侧列表获取
export function queryTopPermissionList(parameter) {
  return axios({
    url: api.queryTopPermissionList,
    method: 'get',
    params: parameter
  })
}

// 用户权限-分管领导查询列表
export function chargeList(params) {
  return axios({
    url: api.chargeList,
    method: 'get',
    params
  })
}

// 用户权限-分管领导新增
export function chargeInsert(data) {
  return axios({
    url: api.chargeInsert,
    method: 'post',
    data
  })
}

// 用户权限-分管领导修改
export function chargeUpdate(data) {
  return axios({
    url: api.chargeUpdate,
    method: 'put',
    data
  })
}

// 用户权限-分管领导删除
export function chargeDelete(id, data) {
  return axios({
    url: `${api.chargeDelete + id}`,
    method: 'delete',
    data
  })
}